home *** CD-ROM | disk | FTP | other *** search
AmigaBASIC Source Code | 1989-11-06 | 19.3 KB | 722 lines |
-
- WINDOW 3,"instructions",,16
- SAVE "intro",b
- WINDOW 2,"text",(150,0)-(500,185),16
- PAINT(1,1),1
- MENU 1,0,1,"instructions "
- MENU 1,1,1,"background"
- MENU 1,2,1,"instructions"
- MENU 1,3,1,"scoring"
- MENU 2,0,1,"hints "
- MENU 2,1,1,"general"
- MENU 2,2,1,"checkmate"
- MENU 2,3,1,"unstop"
- MENU 2,4,1,"winmaterial"
- MENU 2,5,1,"queening"
- MENU 2,6,1,"draw"
- MENU 2,7,1,"4mover"
- MENU 3,0,1,"about "
- MENU 3,1,1,"about"
- MENU 4,0,1,"other "
- MENU 4,1,1,"chess rules
- MENU 4,2,1,"time limits
- MENU 4,3,1,"notation"
- MENU 5,0,1,"chesstutor "
- MENU 5,1,1,"tutor"
-
- ON MENU GOSUB menus
- MENU ON
- ON BREAK GOSUB break2
-
- start:
- PAINT(1,1),1
- COLOR 2,1
- LOCATE 10,2
- PRINT " For information select an item from
- PRINT " the pull-down menu
- PRINT " To start the program select 'tutor'
- PRINT
- PRINT " To exit the program, select 'tutor' first
- wait1:
- GOTO wait1
-
- menus:
- m=MENU(0):m1=MENU(1)
- IF m=1 THEN m1
- IF m=2 THEN m2
- IF m=3 THEN m3
- IF m=4 THEN m4
- IF m=5 THEN m5
- RETURN
-
- m1:
- IF m1=1 THEN background
- IF m1=2 THEN rules
- IF m1=3 THEN scoring
-
- m2:
- IF m1=1 THEN hints
- IF m1=2 THEN checkmate
- IF m1=3 THEN unstop
- IF m1=4 THEN winmaterial
- IF m1=5 THEN queening
- IF m1=6 THEN draw
- IF m1=7 THEN 4mover
-
- m3:
- IF m1=1 THEN about
-
- m4:
- IF m1=1 THEN chessrules
- IF m1=2 THEN chessclocks
- IF m1=3 THEN notation
-
- m5:
- IF m1=1 THEN tutor
-
- background:
- CLS
- PALETTE 0, 0,0.3 ,0
- PAINT(1,1),0
- COLOR 1,0
- PRINT " BACKGROUND
- PRINT
- PRINT " Chess tutor is a program designed to
- PRINT " introduce the novice chess player
- PRINT " to some of the basics of the game.
- PRINT
- PRINT " It is not a program you play against,
- PRINT " like many of the microship chess
- PRINT " computors now available.
- PRINT " Rather,the program presents you with
- PRINT " a sequence of chess positions,in which
- PRINT " you are challenged to find the best
- PRINT " move,as in a game.
- PRINT
- PRINT " You will need to know the rules of chess
- PRINT " in order to be able to use chess tutor.
- PRINT " A brief outline of the rules appear
- PRINT " in an appendix.
- PRINT " You do not have to know chess notation
- PRINT " to use the chesstutor.
- PRINT
- INPUT" HIT RETURN KEY TO CONTINUE";a
- CLS
- PRINT
- PRINT " A sequence of chess positions appear
- PRINT " on the screen,in the form of chess
- PRINT " diagrams. These are similar to those
- PRINT " found in chess books,magazines and
- PRINT " chess sections of newspapers.
- PRINT
- PRINT " There are approximately 1000 chess
- PRINT " positions in all. These positions are
- PRINT " composed, but unlike usual composed
- PRINT " positions which appear to be random
- PRINT " more than anything else,the positions
- PRINT " show situations which are likely to
- PRINT " happen in an actual game. Therefore,
- PRINT " solving these positions will help you
- PRINT " cope with many real game situations.
- PRINT
- INPUT" HIT RETURN KEY TO CONTINUE";a
- CLS
- PRINT
- PRINT " In chess there are 6 different kinds of
- PRINT " pieces. There can interact in many
- PRINT " different ways.
- PRINT " Different ways in which the pieces
- PRINT " can interact is represented by
- PRINT " patterns on the chessboard. It has been
- PRINT " shown that many of these patterns
- PRINT " occur again and again.
- PRINT " Experienced chessplayers are very
- PRINT " familiar with these themes and this
- PRINT " can give them an edge over less
- PRINT " experienced rivals. Many of these
- PRINT " patterns occur in the positions in
- PRINT " chess tutor.
- PRINT
- COLOR 0,1
- PRINT " Select another menu item.
- PRINT " To start, select tutor.
- RETURN
-
- rules:
- CLS
- PALETTE 0, 0, 0.3, 0
- PAINT(1,1),0
- COLOR 1,0
- PRINT " INSTRUCTIONS
- PRINT
- PRINT " Chesstutor is run almost entirely by
- PRINT " the mouse. When the program starts, a
- PRINT " message appears asking for a selection
- PRINT " of one of the pull-down menus.
- PRINT " The program will not continue until
- PRINT " one of them has been selected!
- PRINT
- PRINT " Questions are arranged by type and
- PRINT " difficulty.
- PRINT
- PRINT " Checkmate-The player to move can checkmate
- PRINT " in the given number of moves.
- PRINT " Every move must be a check.
- PRINT
- PRINT " Unstop-The player to move can force
- PRINT " checkmate in the given number of moves
- PRINT " but not every move is check.
- PRINT
- INPUT" HIT RETURN KEY TO CONTINUE";a
- CLS
- PRINT
- PRINT " Winmaterial-the player to move can win
- PRINT " material in the given number of moves.
- PRINT
- PRINT " Queening-either a pawn can reach the
- PRINT " 8th rank and can be promoted OR the
- PRINT " the threat of promoting a pawn can be
- PRINT " used to win material.
- PRINT
- PRINT " Draw-there is a drawing combination.
- PRINT
- PRINT " 4mover-there is a combination in 4 moves
- PRINT
- PRINT " 1mover-there is a combination in 1 move
- PRINT " This section is suggested for starting
- PRINT " chessplayers.
- PRINT
- INPUT" HIT RETURN KEY TO CONTINUE";a
- CLS
- PRINT
- PRINT " You will then be asked what time limit
- PRINT " you wish to select. The options are
- PRINT " (1) 5 minutes
- PRINT " (2) 15 minutes
- PRINT " (3) 30 minutes
- PRINT " (4) 90 minutes
- PRINT " (5) 5 hours
- PRINT
- PRINT " After you have selected one, the above
- PRINT " 3 windows will appear on the screen.
- PRINT " A chessboard will appear,black squares
- PRINT " will appear as green, white squares will
- PRINT " appear as orange.
- PRINT
- PRINT " The first position will appear on the
- PRINT " screen, with different symbols
- PRINT " representing different chess pieces.
- PRINT " The text window will show whether it is
- PRINT " white to move or black to move.
- PRINT
- INPUT" HIT RETURN KEY TO CONTINUE";a
- CLS
- PRINT
- PRINT " To make your move, move the mouse arrow
- PRINT " over the piece you want to move and
- PRINT " click the left button once.
- PRINT " The co-ordinates of the square you have
- PRINT " clicked on will be displayed in the text
- PRINT " window. Then click the left mouse button
- PRINT " on the square you move the piece to.
- PRINT " Again, the co-ordinates will be displayed
- PRINT " in the text window. For more on the
- PRINT " co-ordinates, read chess notation.
- PRINT
- PRINT " If your answer was correct,the word
- PRINT " correct will appear in the text window
- PRINT " and the next position will appear on
- PRINT " the screen and one will be added to your
- PRINT " score. Your current score and the number
- PRINT " of questions you have attempted will be
- PRINT " displayed in the score window.
- PRINT
- INPUT" HIT RETURN KEY TO CONTINUE";a
- CLS
- PRINT
- PRINT " If your answer was incorrect,the word
- PRINT " incorrect will appear in the text window.
- PRINT " You will not advance to the next position
- PRINT " until you have the correct answer!
- PRINT
- PRINT " If you then find the correct answer
- PRINT " you will progress to the next question,
- PRINT " but you will only score for that question
- PRINT " if your first attempt was correct.
- PRINT
- PRINT " You have the option to pass by double
- PRINT " clicking on the a1 square. For those
- PRINT " unfamiliar with algebraic notation
- PRINT " this is the bottom left hand square.
- PRINT " This will introduce the next position
- PRINT " ,but of course you will not score.
- PRINT
- INPUT" HIT RETURN KEY TO CONTINUE";a
- CLS
- PRINT
- PRINT " When your time has run out, or when
- PRINT " you have done all the positions a message
- PRINT " will be displayed asking whether you want
- PRINT " to enter your result in the Hall of Fame.
- PRINT " If not, you will return to the start of
- PRINT " the program.
- PRINT " If yes, you enter your name, then the
- PRINT " score and the question type will be
- PRINT " answered.
- PRINT " The hall of fame will then be displayed
- PRINT " then you will be returned to the start
- PRINT " of the program.
- PRINT
- PRINT "To leave the program select quit.
- COLOR 0,1
- PRINT " Select another menu item.
- PRINT " To start, select tutor.
- RETURN
-
- scoring:
- CLS
- PALETTE 0, 0, 0.3, 0
- PAINT(1,1),0
- COLOR 1,0
- PRINT
- PRINT " While you are solving a section of
- PRINT " questions you current score will be
- PRINT " displayed in the score window. The
- PRINT " number of questions you have got correct
- PRINT " on your first attempt and the total
- PRINT " number of questions will be shown.
- PRINT " When you have finished, a modified total
- PRINT " total score will be shown. The faster
- PRINT " the time limit and the more moves deep
- PRINT " the questions are, the more the weighting
- PRINT " Weightings are as follows;
- PRINT " time-score*15/number of minutes chosen
- PRINT " 1 move deep -score*1
- PRINT " 2 moves deep-score*1.5
- PRINT " 3 moves deep-score*2
- PRINT " 4 moves deep-score*2.5
- PRINT " Theoretically, the highest score could
- PRINT " be gained with a 4mover with a 5
- PRINT " minute time limit. You will tend to score
- PRINT " higher with the faster time-limits.
- PRINT
- INPUT" HIT RETURN KEY TO CONTINUE";a
- CLS
- PRINT
- PRINT " After finishing a section of questions
- PRINT " you will be asked if you wish to enter
- PRINT " the score in the hall of fame.
- PRINT " The score will only be entered if it
- PRINT " is higher than the existing high score
- PRINT " for that section. Only the top score
- PRINT " for each section of questions will be
- PRINT " displayed. In some sections it will be
- PRINT " easier to achieve a high score.
- PRINT " You can use these scores as an incentive
- PRINT " to improve upon your own scores.
- PRINT
- PRINT " You may wish to reset all the high
- PRINT " scores to zero, for example, if you
- PRINT " copy the disk.
- PRINT
- PRINT " Wish to reset high scores?
- PRINT " Answer y and press return key to reset
- PRINT " or press return key to continue.
- INPUT " Answer ";a$
- IF a$="y" THEN
- OPEN "hall" FOR OUTPUT AS 1
- FOR x=1 TO 20
- PRINT #1,0
- PRINT #1,""
- NEXT
- CLOSE
- PRINT " High scores have been reset.
- END IF
- COLOR 0,1
- PRINT " Select another menu item.
- PRINT " To start, select tutor.
- RETURN
-
- hints:
- CLS
- PALETTE 0, 0, 0.7, 0
- PAINT(1,1),0
- COLOR 2,0
- PRINT " HINTS
- PRINT
- PRINT " The range and type of question varies
- PRINT " considerably. If you are racing against
- PRINT " time it may pay to pass on some questions.
- PRINT " For all categories of questions it will
- PRINT " pay to examine all forcing moves,
- PRINT " especially checks and captures.
- PRINT " Some positions will be able to be
- PRINT " solved by trial and error.
- PRINT " In a few positions there will be
- PRINT " more than one correct answer.
- PRINT " In these cases only one correct move will
- PRINT " be the right answer!
- PRINT " Questions will get much easier with
- PRINT " practice, which is the idea of chesstutor.
- PRINT " In sections involving answers of more
- PRINT " than 1 move deep, often there are
- PRINT " the position is continued, following
- PRINT " a plausible reply by the opponent.
- PRINT
- COLOR 0,1
- PRINT " Select another menu item.
- PRINT " To start, select tutor.
- RETURN
-
- checkmate:
- CLS
- PALETTE 0, 0,0.7, 0
- PAINT(1,1),0
- COLOR 2,0
- PRINT
- PRINT " In the checkmate questions it is essential
- PRINT " to examine all checks. It is important
- PRINT " to find the best defence by the defender.
- PRINT " Sometimes sacrifice of a piece will lead
- PRINT " to mate.
- PRINT
- COLOR 0,1
- PRINT " Select another menu item.
- PRINT " To start, select tutor.
- RETURN
-
- unstop:
- CLS
- PALETTE 0, 0, 0.7, 0
- PAINT(1,1),0
- COLOR 2,0
- PRINT
- PRINT " In the unstoppable mate questions
- PRINT " you are aiming to threaten a mate that
- PRINT " cannot be stopped. One or more, but not
- PRINT " all your moves can be checks. Be careful
- PRINT " that the opponent cannot escape the
- PRINT " mate with a check.
- PRINT
- COLOR 0,1
- PRINT " Select another menu item.
- PRINT " To start, select tutor.
- RETURN
-
- winmaterial:
- CLS
- PALETTE 0, 0, 0.7, 0
- PAINT(1,1),0
- COLOR 2,0
- PRINT
- PRINT " In the winning material questions you
- PRINT " may win a piece or a pawn for nothing,
- PRINT " or you may make a favourale exchange.
- PRINT " To help to know whether a favourable
- PRINT " exchange has been made or not the
- PRINT " following scale of values may be useful.
- PRINT " These are based roughly on the average
- PRINT " mobility of each type of piece.
- PRINT " pawn -1
- PRINT " knight -3
- PRINT " bishop -3
- PRINT " rook -5
- PRINT " queen -9
- PRINT " king -1000
- PRINT " The value of the king can be as high as
- PRINT " you like, its just that I do not have an
- PRINT " infinity key on my keyboard.
- PRINT " For example if you lost a bishop, but won
- PRINT " a rook, you have made a gain of 2 points.
- PRINT " (+5-3=2)
- INPUT" HIT RETURN KEY TO CONTINUE";a
- CLS
- PRINT
- PRINT " Material is often won(and lost) by one
- PRINT " of the following tactical devices.
- PRINT
- PRINT " Fork -2 pieces are attacked simultaneously
- PRINT " If one moves away you capture the other.
- PRINT
- PRINT " Pin -a piece cannot move without leaving
- PRINT " the king in check or a powerful piece
- PRINT " like the queen exposed. A pinned piece
- PRINT " is vulnerable to attack as it cannot
- PRINT " escape.
- PRINT
- PRINT " Skewer -2 pieces on the same line are
- PRINT " attacked. The front one moves away leaving
- PRINT " the rear one exposed.
- PRINT
- PRINT " Net- A piece has no safe squares to move
- PRINT " to, so is vulnerable to attack. Checkmate
- PRINT " is a kind of net.
- PRINT
- INPUT" HIT RETURN KEY TO CONTINUE";a
- CLS
- PRINT
- PRINT " Discovery -One piece moves, opening up
- PRINT " an attack by a second piece. The second
- PRINT " piece must be a piece which moves along
- PRINT " a line i.e.a queen, rook or bishop.
- PRINT
- PRINT " Tie -A piece has the task of defending
- PRINT " something, so if it moves something
- PRINT " has to give, hence it is vulnerable
- PRINT " to attack.
- PRINT
- PRINT " There are other kinds of combinations.
- PRINT " For more about combinations, it is
- PRINT " suggested to read a good chess book.
- PRINT
- COLOR 0,1
- PRINT " Select another menu item.
- PRINT " To start, select tutor.
- RETURN
-
- queening:
- PALETTE 0, 0, 0.7, 0
- PAINT(1,1),0
- COLOR 2,0
- CLS
- PRINT
- PRINT " In the queening questions, either the pawn
- PRINT " will be promoted outright or the threat
- PRINT " of queening will win material.
- PRINT " Sometimes a defender will be needed to
- PRINT " be driven away or decoyed.
- PRINT
- COLOR 0,1
- PRINT " Select another menu item.
- PRINT " To start, select tutor.
- RETURN
-
- draw:
- CLS
- PALETTE 0, 0, 0.7, 0
- PAINT(1,1),0
- COLOR 2,0
- PRINT
- PRINT " In the draw questions you will attempt
- PRINT " to find a draw by perpetual check or
- PRINT " to create stalemate. There will be a
- PRINT " number of questions involving perpetual
- PRINT " check followed by a number involving
- PRINT " stalemate.
- PRINT
- PRINT " Of course, normally you would not create
- PRINT " stalemate when material ahead, but
- PRINT " here the answer is not the best move.
- PRINT " It is simply a way of learning
- PRINT " stalemate positions.
- PRINT
- COLOR 0,1
- PRINT " Select another menu item.
- PRINT " To start, select tutor.
- RETURN
-
- 4 mover:
- CLS
- PALETTE 0, 0, 0.7, 0
- PAINT(1,1),0
- COLOR 2,0
- PRINT
- PRINT " In the 4mover you will attempt to mate
- PRINT " in 4 moves. In some of the final
- PRINT " questions you will win material in
- PRINT " 4 moves.
- PRINT
- COLOR 0,1
- PRINT " Select another menu item.
- PRINT " To start, select tutor.
- RETURN
-
- about:
- CLS
- PAINT(1,1),1
- COLOR 2,1
- PRINT
- PRINT " Copyright 1989 W.Jordan
- PRINT " Chess tutor was written by
- PRINT " William Jordan
- PRINT " Australian national chess master
- PRINT
- PRINT " If you enjoyed this program
- PRINT " then send $20(suggested amount) to
- PRINT " P.O.Box 136, Fitzroy, 3065
- PRINT " I will be happy to answer any questions
- PRINT " or suggestions.
- PRINT
- PRINT " Other programs under construction are
- PRINT " a chess database(store many games!)
- PRINT " annotated master games
- PRINT " and many more positions.
- PRINT
- COLOR 0,1
- PRINT " Select another menu item.
- PRINT " To start, select tutor. "
- RETURN
-
- chessrules:
- CLS
- PALETTE 0, 0, 0, 0.7
- PAINT(1,1),0
- COLOR 1,0
- PRINT
- PRINT " There are many excellent begginners
- PRINT " books on chess, so only a brief
- PRINT " summary will be given here.
- PRINT " They will act as a revision, rather
- PRINT " than being completely comphrehensive.
- PRINT
- PRINT " There are 6 types of pieces, each with
- PRINT " their own unique moves.
- PRINT
- PRINT " Rooks move horizontally or vertically
- PRINT " any number of squares.
- PRINT
- PRINT " Bishops move diagonally
- PRINT " any number of squares.
- PRINT
- PRINT " Queens combine the moves of rooks
- PRINT " and bishops.
- PRINT
- PRINT " A king moves 1 square in any
- PRINT " direction.
- PRINT
- INPUT" HIT RETURN KEY TO CONTINUE";a
- CLS
- PRINT
- PRINT " A pawn moves 1 square forward.
- PRINT " A pawn has the option to move 2
- PRINT " squares on its first move.
- PRINT
- PRINT " A knight moves in an L-shape.
- PRINT
- PRINT " All pieces except the pawn can move
- PRINT " backwards or sideways.
- PRINT
- PRINT " The knight is the only piece that can jump.
- PRINT
- PRINT " When the king is under attack it is said
- PRINT " to be in check.
- PRINT " The king must escape check immediately by:
- PRINT " (1) Capturing the checking piece
- PRINT " (2) Moving to a safe square
- PRINT " (3) Blocking the check
- PRINT " The latter can only be done if the
- PRINT " checking piece is a queen, rook or bishop.
- PRINT
- INPUT" HIT RETURN KEY TO CONTINUE";a
- CLS
- PRINT
- PRINT " If the king cannot ecape check, then
- PRINT " it is checkmate and the game is over.
- PRINT
- PRINT " When a pawn reaches the end of the
- PRINT " board, it may promote to any piece
- PRINT " except a king.
- PRINT
- PRINT " Additional rules include castling,
- PRINT " pawn en passant captures and ways
- PRINT " to draw a game.
- PRINT
- COLOR 0,1
- PRINT " Select another menu item.
- PRINT " To start, select tutor.
- RETURN
-
- chessclocks:
- CLS
- PALETTE 0, 0, 0, 0.7
- PAINT(1,1),0
- COLOR 1,0
- PRINT
- PRINT " In competition chess chess clocks
- PRINT " are generally used to set time limits
- PRINT " for each players. Before these were
- PRINT " introduced into world championship play
- PRINT " last century, games became a matter of
- PRINT " who could sit there the longest. Even
- PRINT " in friendly games, chess clocks can be
- PRINT " an asset.
- PRINT
- PRINT " At the start of each section of questions
- PRINT " you have the choice of which time limit
- PRINT " to use. The correspondence option
- PRINT " (which is an arbitrary 5 hours) is
- PRINT " is an option with no time limit, if
- PRINT " if you would like to attempt the questions
- PRINT " without the pressure of time.
- PRINT
- INPUT" HIT RETURN KEY TO CONTINUE";a
- CLS
- PRINT
- PRINT " 40 moves in 90 minutes is one of the
- PRINT " standard time limits for competition
- PRINT " chess so 90 minutes is one option.
- PRINT
- PRINT " 30 minutes for each player is the time
- PRINT " limit of an allegro game. 15 minutes is
- PRINT " the time limit for a skittles game.
- PRINT " 5 minutes is the time limit for a
- PRINT " lightning game. If you wish to try for
- PRINT " a high score, use a faster time limit.
- PRINT " Use a slow time limit if want to get
- PRINT " through all the questions in a section.
- PRINT " There are approximately 30-80 questions
- PRINT " in a section.
- PRINT
- COLOR 0,1
- PRINT " Select another menu item.
- PRINT " To start, select tutor.
- RETURN
-
- notation:
- CLS
- PALETTE 0, 0, 0, 0.7
- PAINT(1,1),0
- COLOR 1,0
- PRINT
- PRINT " Chess notation is the method in which
- PRINT " chess moves are recorded in writing.
- PRINT " There are different kinds of chess
- PRINT " notation. The most common type, which is
- PRINT " also used internationally is algebraic
- PRINT " notation. When you choose a move in the
- PRINT " program, the algebraic notation for the
- PRINT " starting and destination squares of the
- PRINT " piece you have chosen to move is shown
- PRINT " in the question window.
- PRINT
- PRINT " The chessboard can be divided into 8
- PRINT " files(columns) and 8 ranks(rows). In
- PRINT " algebraic notation the files are each
- PRINT " given a letter. From the left, they are
- PRINT " a-h. Ranks are given a number, from the
- PRINT " bottom 1-8. Every square of the
- PRINT " chessboard has a unique name formed of
- PRINT " 2 characters, a letter(a-h) followed
- PRINT " by a number(1-8). The first shows
- PRINT " the file and the second the rank.
- INPUT" HIT RETURN KEY TO CONTINUE";a
- CLS
- PRINT
- PRINT " There are several different ways in
- PRINT " which this can be used to show moves,
- PRINT " but in this program moves are shown by
- PRINT " showing the starting and destination
- PRINT " squares of a piece.
- PRINT
- COLOR 0,1
- PRINT " Select another menu item.
- PRINT " To start, select tutor.
- RETURN
-
- tutor:
- RUN "chesstutor"
- RETURN
-
- break2:
- RETURN
-